package com.mrd.frame.dao;

import java.util.List;

import com.mrd.frame.domain.Config;

public interface ConfigDao {
	/**
	 * 根据id删除
	 * @param configId
	 * @return 数据库受影响的条数
	 */
    int deleteByPrimaryKey(String configId);
    /**
	 * 新增数据（id自动生成，同时新增AccessConfig和WhiteListConfig）
	 * @param Config
	 * @return 数据库受影响的条数
	 */
    int insert(Config record);
    /**
	 * 新增一条数据（id自动生成，null值不插入）
	 * @param Config
	 * @return 数据库受影响的条数
	 */
    int insertSelective(Config record);
    /**
	 * 根据id查找
	 * @param configId
	 * @return Config
	 */
    Config selectByPrimaryKey(String configId);
    /**
	 * 更新数据（更新对象中的非null属性）
	 * @param Config
	 * @return 数据库受影响的条数
	 */
    int updateByPrimaryKeySelective(Config record);
    /**
	 * 更新数据（除id外全部属性更新）
	 * @param Config
	 * @return 数据库受影响的条数
	 */
    int updateByPrimaryKey(Config record);
    /**
     * 根据商户帐号查找配置信息和白名单
     * @param userKey
     * @return Config(包含商户帐号下的所以配置信息和白名单)
     */
    Config selectByUserKey(String userKey);
    /**
     * 查询所有Config配置，不包括子表和白名单
     * @author han 
     * @return Config
     */
    List<Config> selectAllConfig();
}